﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using AccesoData;
using Logica.Interfaces;

namespace Logica.Comandos.Poliza
{
    public class ComandoObtenerPolizaCliente:Comando, IConsultableLista 
    {
        #region Overrides of Comando

        public override void Ejecutar()
        {
            throw new NotImplementedException();
        }

        #endregion

        #region Implementation of IConsultableLista

        /// <summary>
        /// Obtiene una lista de las poliza dado un cliente
        /// </summary>
        /// <param name="busqueda"></param>
        /// <returns></returns>
        public List<object> Ejecutar(object busqueda)
        {
            try
            {
                List<Object> retorno = new List<object>();
                foreach (Entidades.Poliza poliza in 
                   DAO.ObtenerFabrica(1).ObtenerDaoPoliza().ObtenerPolizasCliente((int) busqueda))
                { 
                    poliza.Aseguradora =
                        DAO.ObtenerFabrica(1).ObtenerDaoAseguradora().ObtenerAseguradoraId(poliza.Aseguradora.Id);
                    poliza.Ramo = 
                        DAO.ObtenerFabrica(1).ObtenerDaoRamo().ObtenerRamoId(poliza.Ramo.Id);
                    retorno.Add(poliza); 
                }
                return retorno;
            }
            catch (Exception)
            {

                return null;
            }
        }

        #endregion
    }
}
